/**
 * @description 将CSS样式名转换为.kebab-case格式。
 * @param {string} [str=''] 待转换的CSS样式名，默认为空字符串。
 * @param {string} [addPrefix='-'] 转换时添加到大写字母前的前缀，默认为'-'。
 * @param {RegExp} [pattern=/([A-Z])/g] 匹配需要转换的大写字母的正则表达式，默认为匹配所有大写字母。
 * @returns {string} 转换后的.kebab-case格式的字符串，如果原字符串不包含大写字母，则原样返回。
 */
const convertToKebabCase = (
  str: string = '',
  addPrefix: string = '-',
  pattern: RegExp = /([A-Z])/g
): string => {
  if (pattern.test(str)) {
    return str.replace(pattern, `${addPrefix}$1`).toLowerCase()
  }
  return str
}
export default convertToKebabCase
